import os
#定义计算目录大小的函数
def dir_size(dir):
    sum = 0
    #判断指定目录是否为文件
    if os.path.isfile(dir):
        #若指定目录为文件，计算文件大小
        sum+=os.path.getsize(dir)
    #判断指定目录是否为文件夹
    if os.path.isdir(dir):
        #若指定目录为文件夹，获取指定文件夹中的所有文件和文件夹组成的列表
        flist = os.listdir(dir)
        for f in flist:
            #将文件夹与文件夹下文件进行路径拼装
            file=os.path.join(dir,f)
            # 判断指定路径是否为文件
            if os.path.isfile(file):
                #统计文件夹下文件大小
                sum=sum+os.path.getsize(file)
                # 判断指定路径是否为目录
            if os.path.isdir(file):
                #递归调用自己来实现子目录的文件大小统计
                sum+=dir_size(file)

    return sum

a=input("请输入目录路径： ")
print("{}字节".format(dir_size(a)))
